package com.aaron.extension;

import java.lang.annotation.*;

/** 模仿的就是dubbo的SPI机制。目的是在运行时动态的为接口加载实现类
 * 被@SPI注解的类有：都是接口
 * 1. Compress.java  压缩接口
 * 2. LoadBalance.java 负载接口
 * 3. ServiceDiscovery.java 服务发现接口
 * 4. ServiceRegistry.java 服务注册接口
 * 5. RpcRequestTransport.java 服务传输接口
 * 6. Serializer.java 序列化接口
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface SPI {
}

